#!/usr/bin/env python3
# -*- coding: utf-8 -*-

"""
这个程序是帮助我们在平时生活中学习英语的，在平时里我们会通过视频或者阅读碰到各种
生僻的单词，这个程序就是帮助我们查询这个单词，并且帮助我们及时复习掌握单词，程序
有三部分就是查询，复习和退出，当我们选择查询时我们输入单词，程序会在已经有的单词
本中查找。当我们选择复习时，程序会在我们的单词本中随机抽取单词起到及时复习的作用
有利于我学习英语单词。使得自己的英语成绩不断提高

作者：郑xx
"""

import pickle
import random


def query(word):
    if word in note:
        answer=note[word]
        print("单词的中文是：", answer)
    else:
        choice=input("无法找到该单词是否讲此单词加入到单词本中, 如果是按1不是按2：")
        if choice=="1":
            word_meaning=input("请输入单词的中文：")
            note[word]=word_meaning
            print("最新添加的单词单词本为：", note)
            print("添加成功可以复习")


def review():
    print("如果想退出复习输入1")
    while True:
        word1 = random.choice(note.keys())
        print("请打出单词 %s 的意思：" % word1)
        word = input("单词的意思是：")
        if word == note[word1]:
            print("正确！")
        elif word == "1":
            break
        else:
            print("再仔细想想, 再给你一次机会")
            word = input("单词的意思:")
            if word == note[word1]:
                print("这次对啦！")
            else:
                print("不对哦，单词的意思是：", note[word1])

try:
    with open('mynote.pkl','wb') as pickle_file:
        note=pickle.load(pickle_file)
except:
    note={'note': '笔记'}

print('--进入笔记系统--')
while True:
    select = input("查询 or 复习 or 退出：")
    if select == "查询":
        name=input("请输入单词：")
        query(name)
    elif select == "复习":
        review()
    elif select == "退出":
        print("谢谢使用!")
        break
    else:
        print("功能输入错误")
print('--退出笔记系统--')

with open('mynote.pkl','wb') as pickle_file:
    pickle.dump(note, pickle_file)
